package leetcode;

/*
371. 两整数之和
不使用运算符 + 和 - ​​​​​​​，计算两整数 ​​​​​​​a 、b ​​​​​​​之和。
示例 1:
输入: a = 1, b = 2
输出: 3
示例 2:
输入: a = -2, b = 3
输出: 1
*/

public class problems_371 {
    public static void main(String[] args) {
        System.out.println(new Solution().getSum(12,8));
    }

    static class Solution {
        public int getSum(int a, int b) {
            while(b != 0){
                int temp = a ^ b;
                b = (a & b) << 1;
                a = temp;
            }
            return a;
        }
    }

//    static class Solution {
//        public int getSum(int a, int b) {
//            for (int i = 0; i < Math.abs(b); i++) {
//                if(b > 0){
//                    a++;
//                }else {
//                    a--;
//                }
//            }
//            return a;
//        }
//    }
}